(in-package :TRAPS)
; Generated from #P"macintosh-hd:hd3:CInterface Translator:Source Interfaces:nlist.h"
; at Sunday July 2,2006 7:30:34 pm.
; 
;  * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
;  *
;  * @APPLE_LICENSE_HEADER_START@
;  * 
;  * The contents of this file constitute Original Code as defined in and
;  * are subject to the Apple Public Source License Version 1.1 (the
;  * "License").  You may not use this file except in compliance with the
;  * License.  Please obtain a copy of the License at
;  * http://www.apple.com/publicsource and read it before using this file.
;  * 
;  * This Original Code and all software distributed under the License are
;  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
;  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
;  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
;  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
;  * License for the specific language governing rights and limitations
;  * under the License.
;  * 
;  * @APPLE_LICENSE_HEADER_END@
;  
; 
;  * @OSF_COPYRIGHT@
;  
; 
;  * HISTORY
;  * 
;  * Revision 1.1.1.1  1998/09/22 21:05:48  wsanchez
;  * Import of Mac OS X kernel (~semeria)
;  *
;  * Revision 1.1.1.1  1998/03/07 02:26:09  wsanchez
;  * Import of OSF Mach kernel (~mburg)
;  *
;  * Revision 1.1.11.2  1995/01/06  19:11:11  devrcs
;  * 	mk6 CR668 - 1.3b26 merge
;  * 	Add padding for alpha, make n_other unsigned,
;  * 	fix erroneous def of N_FN.
;  * 	[1994/10/14  03:40:03  dwm]
;  *
;  * Revision 1.1.11.1  1994/09/23  01:23:37  ezf
;  * 	change marker to not FREE
;  * 	[1994/09/22  21:11:49  ezf]
;  * 
;  * Revision 1.1.4.3  1993/07/27  18:28:42  elliston
;  * 	Add ANSI prototypes.  CR #9523.
;  * 	[1993/07/27  18:13:44  elliston]
;  * 
;  * Revision 1.1.4.2  1993/06/02  23:13:34  jeffc
;  * 	Added to OSF/1 R1.3 from NMK15.0.
;  * 	[1993/06/02  20:58:08  jeffc]
;  * 
;  * Revision 1.1  1992/09/30  02:24:29  robert
;  * 	Initial revision
;  * 
;  * $EndLog$
;  
;  CMU_HIST 
; 
;  * Revision 2.4  91/05/14  15:38:20  mrt
;  * 	Correcting copyright
;  * 
;  * Revision 2.3  91/02/05  17:07:42  mrt
;  * 	Changed to new Mach copyright
;  * 	[91/01/31  16:20:26  mrt]
;  * 
;  * 11-Aug-88  David Golub (dbg) at Carnegie-Mellon University
;  *	Added n_un, n_strx definitions for kernel debugger (from
;  *	a.out.h).
;  *
;  
;  CMU_ENDHIST 
; 
;  * Mach Operating System
;  * Copyright (c) 1991 Carnegie Mellon University
;  * All Rights Reserved.
;  * 
;  * Permission to use, copy, modify and distribute this software and its
;  * documentation is hereby granted, provided that both the copyright
;  * notice and this permission notice appear in all copies of the
;  * software, derivative works or modified versions, and any portions
;  * thereof, and that both notices appear in supporting documentation.
;  *
;  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
;  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
;  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
;  *
;  * Carnegie Mellon requests users of this software to return to
;  *
;  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
;  *  School of Computer Science
;  *  Carnegie Mellon University
;  *  Pittsburgh PA 15213-3890
;  *
;  * any improvements or extensions that they make and grant Carnegie Mellon 
;  * the rights to redistribute these changes.
;  
; 
;  
; 
;  *  nlist.h - symbol table entry  structure for an a.out file
;  *  derived from FSF's a.out.gnu.h
;  *
;  
; #ifndef _DDB_NLIST_H_
; #define _DDB_NLIST_H_
(defrecord nlist
   (:variant
   (
   (n_name (:pointer :char))
   )
                                                ;  symbol name 
   (
   (n_strx :signed-long)
   )
                                                ;  index into file string table 
   )
   (n_type :UInt8)
                                                ;  type flag, i.e. N_TEXT etc; see below 
   (n_other :UInt8)
                                                ;  unused 
   (n_desc :SInt16)
                                                ;  see <stab.h> 

; #if	defined(__alpha)
#| 
   (n_pad :signed-long)
                                                ;  alignment, used to carry framesize info 
 |#

; #endif

   (n_value :UInt32)
                                                ;  value of this symbol (or sdb offset) 
)
; 
;  * Simple values for n_type.
;  
(defconstant $N_UNDF 0)
; #define	N_UNDF	0		/* undefined */
(defconstant $N_ABS 2)
; #define	N_ABS	2		/* absolute */
(defconstant $N_TEXT 4)
; #define	N_TEXT	4		/* text */
(defconstant $N_DATA 6)
; #define	N_DATA	6		/* data */
(defconstant $N_BSS 8)
; #define	N_BSS	8		/* bss */
(defconstant $N_FN 30)
; #define	N_FN	0x1e		/* file name symbol */
(defconstant $N_EXT 1)
; #define	N_EXT	1		/* external bit, or'ed in */
(defconstant $N_TYPE 30)
; #define	N_TYPE	0x1e		/* mask for all the type bits */
(defconstant $N_STAB 224)
; #define	N_STAB	0xe0		/* if any of these bits set, a SDB entry */

; #endif	/* !_DDB_NLIST_H_ */


(provide-interface "nlist")